home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / textob / textobj.frm (.txt) < prev    next >
Visual Basic Form  |  1996-03-06  |  5KB  |  166 lines

  1. VERSION 4.00
  2. Begin VB.Form frmMain 
  3.    Caption         =   "Text File Object Demo"
  4.    ClientHeight    =   6630
  5.    ClientLeft      =   675
  6.    ClientTop       =   375
  7.    ClientWidth     =   9510
  8.    Height          =   7035
  9.    Left            =   615
  10.    LinkTopic       =   "Form1"
  11.    ScaleHeight     =   0
  12.    ScaleMode       =   3  'Pixel
  13.    ScaleWidth      =   0
  14.    Top             =   30
  15.    Width           =   9630
  16.    Begin VB.CommandButton btnFind 
  17.       Caption         =   "Find &Next"
  18.       Enabled         =   0   'False
  19.       Height          =   510
  20.       Index           =   1
  21.       Left            =   4320
  22.       TabIndex        =   4
  23.       Top             =   5985
  24.       Width           =   1365
  25.    End
  26.    Begin VB.CommandButton btnFind 
  27.       Caption         =   "Find &First"
  28.       Enabled         =   0   'False
  29.       Height          =   510
  30.       Index           =   0
  31.       Left            =   2880
  32.       TabIndex        =   3
  33.       Top             =   5985
  34.       Width           =   1365
  35.    End
  36.    Begin VB.CommandButton btnLoadDirect 
  37.       Caption         =   "Load &Direct"
  38.       Height          =   495
  39.       Left            =   1215
  40.       TabIndex        =   2
  41.       Top             =   6000
  42.       Width           =   1575
  43.    End
  44.    Begin VB.CommandButton btnOpen 
  45.       Caption         =   "&Load"
  46.       Height          =   495
  47.       Left            =   90
  48.       TabIndex        =   1
  49.       Top             =   6030
  50.       Width           =   975
  51.    End
  52.    Begin VB.ListBox List1 
  53.       BeginProperty Font 
  54.          name            =   "Courier New"
  55.          charset         =   0
  56.          weight          =   400
  57.          size            =   9
  58.          underline       =   0   'False
  59.          italic          =   0   'False
  60.          strikethrough   =   0   'False
  61.       EndProperty
  62.       Height          =   5685
  63.       Left            =   120
  64.       TabIndex        =   0
  65.       Top             =   120
  66.       Width           =   9255
  67.    End
  68.    Begin MSComDlg.CommonDialog CommonDialog1 
  69.       Left            =   8910
  70.       Top             =   5940
  71.       _Version        =   65536
  72.       _ExtentX        =   847
  73.       _ExtentY        =   847
  74.       _StockProps     =   0
  75.    End
  76. Attribute VB_Name = "frmMain"
  77. Attribute VB_Creatable = False
  78. Attribute VB_Exposed = False
  79. Option Explicit
  80. Private objTextFile As New TextFile
  81. Private Sub btnFind_Click(Index As Integer)
  82.     Dim szMatch As String
  83.     Dim nLineNum    As Integer
  84.     Select Case Index
  85.         Case 0 '-- FindFirst
  86.             szMatch = InputBox("Enter Search Term")
  87.             If Len(szMatch) = 0 Then
  88.                 Exit Sub
  89.             End If
  90.                 
  91.             '-- Case-Insensitive Search
  92.             nLineNum = objTextFile.FindFirst(szMatch, False)
  93.             
  94.             If nLineNum Then
  95.                 List1.TopIndex = nLineNum - 1
  96.                 btnFind(1).Enabled = True
  97.             Else
  98.                 btnFind(1).Enabled = False
  99.             End If
  100.         Case 1
  101.             '-- Case-Insensitive Search
  102.             nLineNum = objTextFile.FindNext
  103.             
  104.             If nLineNum Then
  105.                 List1.TopIndex = nLineNum - 1
  106.                 btnFind(1).Enabled = True
  107.             Else
  108.                 btnFind(1).Enabled = False
  109.             End If
  110.     End Select
  111. End Sub
  112. Private Sub btnLoadDirect_Click()
  113.     Dim lIndex  As Long
  114.     '-- Get a text file name to open
  115.     CommonDialog1.DialogTitle = "Open Text File"
  116.     CommonDialog1.CancelError = True
  117.     CommonDialog1.Filter = "Text (*.txt)"
  118.     CommonDialog1.filename = "*.txt"
  119.     On Error Resume Next
  120.     CommonDialog1.Action = 1
  121.     If Err Then Exit Sub
  122.     Screen.MousePointer = vbHourglass
  123.     '-- Load the file
  124.     objTextFile.LoadListBox (CommonDialog1.filename), List1
  125.     '-- Error loading?
  126.     If objTextFile.ErrorNum Then
  127.         MsgBox objTextFile.ErrorMsg, vbInformation, "TextFile Object Demo"
  128.         Exit Sub
  129.     End If
  130.     btnFind(0).Enabled = False
  131.     btnFind(1).Enabled = False
  132.     Screen.MousePointer = vbNormal
  133. End Sub
  134. Private Sub btnOpen_Click()
  135.     Dim lIndex  As Long
  136.     '-- Get a text file name to open
  137.     CommonDialog1.DialogTitle = "Open Text File"
  138.     CommonDialog1.CancelError = True
  139.     CommonDialog1.Filter = "Text (*.txt)"
  140.     CommonDialog1.filename = "*.txt"
  141.     On Error Resume Next
  142.     CommonDialog1.Action = 1
  143.     If Err Then Exit Sub
  144.     Screen.MousePointer = vbHourglass
  145.     '-- Load the file
  146.     objTextFile.Load (CommonDialog1.filename)
  147.     '-- Error loading?
  148.     If objTextFile.ErrorNum Then
  149.         MsgBox objTextFile.ErrorMsg, vbInformation, "TextFile Object Demo"
  150.         Exit Sub
  151.     End If
  152.     '-- Load the file in the list box
  153.     List1.Clear
  154.     On Error Resume Next
  155.     For lIndex = 1 To objTextFile.Lines
  156.         List1.AddItem objTextFile.Line(lIndex)
  157.         If Err Then Stop
  158.     Next
  159.     btnFind(0).Enabled = True
  160.     Screen.MousePointer = vbNormal
  161. End Sub
  162. Private Sub Form_Load()
  163.     '-- Center the form
  164.     Move (Screen.Width \ 2) - (Me.Width \ 2), (Screen.Height \ 2) - (Me.Height \ 2)
  165. End Sub
  166.